package com.tulele.vtool.service;

import com.tulele.vtool.model.PunchClockArticleInfo;

import java.util.Date;

public interface IUserPunchClockInfoService {

    /**
     * 用户打卡处理
     * @param userId 用户ID
     * @param clockArticleId 打卡文章ID
     * @param clockTime 打卡文章的打卡日期 上午时分秒(00:00:00) 下午时分秒(12:00:00)
     * @return
     */
    int userPunchClockProcess(Integer userId, Integer clockArticleId, Date clockTime);

    /**
     * 获取用户打卡文章信息
     * @return
     */
    PunchClockArticleInfo getUserPunchClockArticleInfo();

    /**
     * 根据文章ID获取用户打卡文章信息
     * @return
     */
    PunchClockArticleInfo getPunchClockArticleInfoById(Integer clockArticleId);

    /**
     * 获取总打卡次数
     * @return
     */
    Integer getTotalUserPunchClockDays();

    /**
     * 获取用户打卡天数
     * @param userId
     * @return
     */
    int getUserClockDays(Integer userId);

    Integer queryUserSpecialDayPunchClockStatus(Integer userId, String clockTime);

}
